home *** CD-ROM | disk | FTP | other *** search
- /*
- File: AYSThreadGlue.h
-
- Copyright: © 1991-1994 by Apple Computer, Inc.
- All rights reserved.
-
- Part of the AOCE Sample SMSAM Package. Consult the license
- which came with this software for your specific legal rights.
-
- */
-
-
-
- #ifndef __AYSTHREADGLUE__
- #define __AYSTHREADGLUE__
-
- #ifndef __BLJSTANDARDINCLUDES__
- #include "BLJStandardIncludes.h"
- #endif
-
- #ifndef __OCE__
- #include "OCE.h"
- #endif
-
- #ifndef __OCEMAIL__
- #include "OCEMail.h"
- #endif
-
- #ifndef __OCEAUTHDIR__
- #include "OCEAuthDir.h"
- #endif
-
- #if 0
- #ifndef __THREAD__
- #include "Thread.h"
- #endif
- #else
- #ifndef __THREADCLASSES__
- #include "ThreadClasses.h"
- #endif
- #endif
-
-
- #ifndef __GENERIC__
- #include <Generic.h>
- #endif
-
-
- # define __junk(k) k
- #ifndef name2
- # define name2(a,b) __junk(a)b
- #endif
- #ifndef name3
- # define name3(a,b,c) __junk(a)__junk(b)c
- #endif
- #ifndef name4
- # define name4(a,b,c,d) __junk(a)__junk(b)__junk(c)d
- #endif
-
- typedef pascal OSErr (*FNPBB)(ParmBlkPtr, Boolean);
-
- OSErr ThreadPBCallAsync ( FNPBB functionToCall, ParmBlkPtr pb );
-
- #ifndef MakePBFunctionSleepable
- #define MakePBFunctionSleepable(function,ParamBlockType) \
- pascal OSErr name2(function,Glue)(ParamBlockType* pb, Boolean async); \
- inline OSErr name2(function,Sleep)(ParamBlockType* pb) { \
- /* return TFSDispatchAsync((FNPBB) name2(function,Glue), (ParmBlkPtr) pb); */ \
- return ThreadPBCallAsync ((FNPBB) name2(function,Glue), (ParmBlkPtr) pb); \
- };
- #endif
-
-
- // MakePBFunctionSleepable(PGWGetSlotQueueID,MSAMParam);
-
-
- MakePBFunctionSleepable(SMSAMShutdown,MSAMParam);
-
- MakePBFunctionSleepable(PMSAMSetStatus,MSAMParam);
-
- MakePBFunctionSleepable(MSAMEnumerate,MSAMParam);
- MakePBFunctionSleepable(MSAMDelete,MSAMParam);
- MakePBFunctionSleepable(MSAMMarkRecipients,MSAMParam);
- MakePBFunctionSleepable(MSAMnMarkRecipients,MSAMParam);
-
- MakePBFunctionSleepable(MSAMCreate, MSAMParam);
- MakePBFunctionSleepable(MSAMOpen, MSAMParam);
- MakePBFunctionSleepable(MSAMOpenNested, MSAMParam);
- MakePBFunctionSleepable(MSAMClose,MSAMParam);
-
- MakePBFunctionSleepable(MSAMGetRecipients,MSAMParam);
- MakePBFunctionSleepable(MSAMGetAttributes,MSAMParam);
- MakePBFunctionSleepable(MSAMGetContent,MSAMParam);
- MakePBFunctionSleepable(MSAMGetEnclosure,MSAMParam);
- MakePBFunctionSleepable(MSAMGetBlock,MSAMParam);
- MakePBFunctionSleepable(MSAMGetMsgHeader,MSAMParam);
-
- MakePBFunctionSleepable(MSAMPutAttribute,MSAMParam);
- MakePBFunctionSleepable(MSAMPutRecipient,MSAMParam);
- MakePBFunctionSleepable(MSAMPutContent,MSAMParam);
- MakePBFunctionSleepable(MSAMPutBlock,MSAMParam);
- MakePBFunctionSleepable(MSAMPutMsgHeader,MSAMParam);
-
- MakePBFunctionSleepable(MSAMCreateReport,MSAMParam);
- MakePBFunctionSleepable(MSAMPutRecipientReport,MSAMParam);
-
- MakePBFunctionSleepable(MSAMEnumerateBlocks, MSAMParam);
-
-
- MakePBFunctionSleepable(DirAddRecord, DirParamBlock);
- MakePBFunctionSleepable(DirDeleteRecord, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateGet, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateParse, DirParamBlock);
- MakePBFunctionSleepable(DirLookupGet, DirParamBlock);
- MakePBFunctionSleepable(DirLookupParse, DirParamBlock);
- MakePBFunctionSleepable(DirAddAttributeValue, DirParamBlock);
- MakePBFunctionSleepable(DirDeleteAttributeValue, DirParamBlock);
- MakePBFunctionSleepable(DirDeleteAttributeType, DirParamBlock);
- MakePBFunctionSleepable(DirChangeAttributeValue, DirParamBlock);
- MakePBFunctionSleepable(DirVerifyAttributeValue, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateAttributeTypesGet, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateAttributeTypesParse, DirParamBlock);
- MakePBFunctionSleepable(DirAddAlias, DirParamBlock);
-
- MakePBFunctionSleepable(DirGetNameAndType, DirParamBlock);
- MakePBFunctionSleepable(DirSetNameAndType, DirParamBlock);
- MakePBFunctionSleepable(DirGetRecordMetaInfo, DirParamBlock);
- MakePBFunctionSleepable(DirGetDirectoryInfo, DirParamBlock);
- // MakePBFunctionSleepable(DirSetRecordAccessControl, DirParamBlock);
-
- MakePBFunctionSleepable(DirGetRecordAccessControlGet, DirParamBlock);
- MakePBFunctionSleepable(DirGetRecordAccessControlParse, DirParamBlock);
-
- MakePBFunctionSleepable(DirGetAttributeAccessControlGet, DirParamBlock);
- MakePBFunctionSleepable(DirGetAttributeAccessControlParse, DirParamBlock);
-
- // MakePBFunctionSleepable(DirSetAttributeAccessControl, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateDirectoriesGet, DirParamBlock);
- MakePBFunctionSleepable(DirEnumerateDirectoriesParse, DirParamBlock);
-
- MakePBFunctionSleepable(DirMapPathNameToDNodeNumber, DirParamBlock);
- MakePBFunctionSleepable(DirMapDNodeNumberToPathName, DirParamBlock);
- MakePBFunctionSleepable(DirGetLocalNetworkSpec, DirParamBlock);
-
- MakePBFunctionSleepable(DirGetExtendedDirectoriesInfo, DirParamBlock);
-
- /* Trap Dispatchers for Personal Address Book and DASH Extensions */
- // MakeOCEFunctionSleepable(DSInstallDirectory, DirParamBlock);
- // MakeOCEFunctionSleepable(DSCloseDirectory, DirParamBlock);
- // MakeOCEFunctionSleepable(DSGetDirectoryIcon, DirParamBlock);
-
- # undef aysname2
- # undef aysname3
- # undef aysname4
-
- #endif
-